home *** CD-ROM | disk | FTP | other *** search
/ Amiga News 96 / Amiga News 96.iso / amig_ad_os / laurent_faillie / lfcinter / exemples / tstvar.x < prev   
Text File  |  1977-12-31  |  1KB  |  49 lines

  1. /*  tstvar.x
  2.  *
  3.  *  Test sur la porté des variables;
  4.  */
  5.  
  6. char *x = "globale";
  7.  
  8. void fonc1(){ // variable locale
  9.     char *x="fonction 1";
  10.  
  11.     printf("Dans fonc1 (variable locale):%s\n",x);
  12. }
  13.  
  14. void fonc2(){ // Pas de variable locale
  15.     printf("Dans fonc2 (pas de variable locale):%s\n",x);
  16. }
  17.  
  18. void fonc3(char *x){ // Passé en argument
  19.     printf("Dans fonc3 (passage d'argument):%s\n",x);
  20. }
  21.  
  22. void fonc4(char *x){ // Passé en argument par valeur avec modif
  23.     x="modifier par fonc4";
  24.     printf("Dans fonc4 (passage d'argument par valeur avec modification):%s\n",x);
  25. }
  26.  
  27. void fonc5(char **x){ // Passé en argument par adresse avec modif
  28.     *x="modifier par fonc5";
  29.     printf("Dans fonc5 (passage d'argument par valeur avec modification):%s\n",*x);
  30. }
  31.  
  32. void main(){
  33.     char *x="fonction main()";
  34.  
  35.     printf("Au début de main :%s\n",x);
  36.  
  37.     fonc1();
  38.     fonc2();
  39.     fonc3(x);
  40.  
  41.     printf("Dans main() après fonc3 :%s\n",x);
  42.  
  43.     fonc4(x);
  44.     printf("Dans main() après fonc4 :%s\n",x);
  45.  
  46.     fonc5(&x);
  47.     printf("Dans main() après fonc5 :%s\n",x);
  48. }
  49.